package com.itheima.admin.Wuwu;

import com.itheima.common.vo.ResultVo;

import java.beans.IntrospectionException;
import java.io.Serializable;
import java.lang.reflect.InvocationTargetException;
import java.util.List;

/**
 * 查询数据信息
 */
public interface SelectController<T> {
    /**
     * 根据id查询数据
     * @param id  接收传过来的ID
     * @return 返回查询的结果对象
     */
    ResultVo<T> findById(Serializable id);

    /**
     * 查询表中所有数据
     * @return 返回查询到的接收数据对象list集合的封装对象
     */
    ResultVo<List<T>> findAll();

    ResultVo<List<T>> findByRecord(T record) throws IntrospectionException, InvocationTargetException, IllegalAccessException;
}
